package com.itheima.mylambda.text2;
/*
      Lambda表达式的使用前提
          1. 一个接口
          2. 接口中有且仅有一个抽象方法

      练习1：
          1. 编写一个接口（ShowHandler）
          2. 在该接口中存在一个抽象方法（show），该方法是无参数无返回值
          3. 在测试类（ShowHandlerDemo）中存在一个方法（useShowHandler）
                      方法的的参数是ShowHandler类型的
                      在方法内部调用了ShowHandler的show方法
   */
public class TestLambda {
    public static void main(String[] args) {
        //lambda表达式的使用一定要有上下文环境: 1. 充当实参,给形参赋值,形参是接口类型;
        // 2. 作为方法的返回值,返回值类型是接口类型; 3. 给接口赋值,充当实现类对象
        useShowHandler(()->{
            System.out.println("我是内部匿名");
        });
    }
    public static void useShowHandler(Showhandler showhandler){
        showhandler.show();
    }
}
//1. 编写一个接口（ShowHandler）
// 2. 在该接口中存在一个抽象方法（show），该方法是无参数无返回值
interface Showhandler{
    void show();
}